/**
 * Copyright &copy; 2012-2014 <a href="https://github.com/thinkgem/jeesite">JeeSite</a> All rights reserved.
 */
package cn.apestar.modules.report.userreport.entity;

import javax.validation.constraints.NotNull;

import org.hibernate.validator.constraints.Length;

import cn.apestar.common.persistence.DataEntity;

/**
 * 用户收徒报表管理Entity
 * @author yudw
 * @version 2016-10-10
 */
public class UserReport extends DataEntity<UserReport> {

    private static final long serialVersionUID = 1L;

    private Long institutionId; // 注册机构ID,即租户

    private String account; // 登陆账户名

    private String password; // 密码

    private String name; // 真实姓名

    private String phone; // 联系电话

    private String regIp; // 注册IP

    private String email; // 邮件地址

    private String weixinId; // 微信Open_id

    private String nickName; // 昵称

    private String photo; // 头像

    private String userType; // 机构(org),家长(parent),老师(teacher),孩子(child),校长(master),商家(trader),代理(agent),客户(customer)

    private String sex; // 性别 Male:男 Female：女

    private String app; // 注册app：org午托邦机构，parent午托邦家长，nto优虎

    private String ringId; // 环信ID

    private String terminal; // 注册终端

    private Long invitorId; // 邀请人

    private String generateWay; // 用户生成方式 system 系统初始化，import导入，normal正常注册

    private String orderBy; // 排序规则

    private String num; // 徒弟统计

    public String getOrderBy() {
        return orderBy;
    }

    public void setOrderBy(String orderBy) {
        this.orderBy = orderBy;
    }

    public String getNum() {
        return num;
    }

    public void setNum(String num) {
        this.num = num;
    }

    public UserReport() {
        super();
    }

    public UserReport(String id) {
        super(id);
    }

    @NotNull(message = "注册机构ID,即租户不能为空")
    public Long getInstitutionId() {
        return institutionId;
    }

    public void setInstitutionId(Long institutionId) {
        this.institutionId = institutionId;
    }

    @Length(min = 1, max = 32, message = "登陆账户名长度必须介于 1 和 32 之间")
    public String getAccount() {
        return account;
    }

    public void setAccount(String account) {
        this.account = account;
    }

    @Length(min = 1, max = 32, message = "密码长度必须介于 1 和 32 之间")
    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    @Length(min = 0, max = 64, message = "真实姓名长度必须介于 0 和 64 之间")
    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    @Length(min = 1, max = 20, message = "联系电话长度必须介于 1 和 20 之间")
    public String getPhone() {
        return phone;
    }

    public void setPhone(String phone) {
        this.phone = phone;
    }

    @Length(min = 1, max = 20, message = "注册IP长度必须介于 1 和 20 之间")
    public String getRegIp() {
        return regIp;
    }

    public void setRegIp(String regIp) {
        this.regIp = regIp;
    }

    @Length(min = 1, max = 64, message = "邮件地址长度必须介于 1 和 64 之间")
    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    @Length(min = 1, max = 64, message = "微信Open_id长度必须介于 1 和 64 之间")
    public String getWeixinId() {
        return weixinId;
    }

    public void setWeixinId(String weixinId) {
        this.weixinId = weixinId;
    }

    @Length(min = 0, max = 64, message = "昵称长度必须介于 0 和 64 之间")
    public String getNickName() {
        return nickName;
    }

    public void setNickName(String nickName) {
        this.nickName = nickName;
    }

    @Length(min = 1, max = 255, message = "头像长度必须介于 1 和 255 之间")
    public String getPhoto() {
        return photo;
    }

    public void setPhoto(String photo) {
        this.photo = photo;
    }

    public String getUserType() {
        return userType;
    }

    public void setUserType(String userType) {
        this.userType = userType;
    }

    public String getSex() {
        return sex;
    }

    public void setSex(String sex) {
        this.sex = sex;
    }

    public String getApp() {
        return app;
    }

    public void setApp(String app) {
        this.app = app;
    }

    @Length(min = 1, max = 50, message = "环信ID长度必须介于 1 和 50 之间")
    public String getRingId() {
        return ringId;
    }

    public void setRingId(String ringId) {
        this.ringId = ringId;
    }

    public String getTerminal() {
        return terminal;
    }

    public void setTerminal(String terminal) {
        this.terminal = terminal;
    }

    public Long getInvitorId() {
        return invitorId;
    }

    public void setInvitorId(Long invitorId) {
        this.invitorId = invitorId;
    }

    public String getGenerateWay() {
        return generateWay;
    }

    public void setGenerateWay(String generateWay) {
        this.generateWay = generateWay;
    }

}